// Router 配置参数
export interface RouterConfig {
  modules?: Record<string, unknown>; // 所有动态路由文件
  loginPagePath?: string; // 登录页路径,默认/login
  parentRouteName?: string; // 动态路由挂载父级[name属性值]
  routeTreeNodeHandler?: (route: any) => void; // 路由参数格式化
  dynamicRoutesRequest?: () => Promise<RouteTreeNode[]>; // 动态路由请求
}

export interface RouteTreeNode {
  path: string; // 路由地址
  name: string; // 路由名称
  redirect?: any; // 路由重定向
  component?: string; // 页面文件名
  meta?: Record<string, unknown>; // 路由元信息
  children?: RouteTreeNode[]; // 子路由
}

export interface DynamicRouteTreeNode extends RouteTreeNode {
  parent?: string; // 挂载父级
}

export interface RouteFieldMapping {
  path?: string; // 路由地址
  name?: string; // 路由名称
  redirect?: string; // 路由重定向
  component?: string; // 页面文件名
}
